@import url("https://fonts.googleapis.com/css?family=Lato:300");

:root{
    --dur: 0.7s;
    --lace-delay:0.05s;
    --sparkle:0.3s;
}
body{
    background: #806d9e;
}

.ear-right, .ear-left{
    animation: earFlip var(--dur) infinite cubic-bezier(0.34, 0.31, 0.4, 0.87) alternate;
}
.ear-right{
    transform-origin: 90.6pt 38.2pt;
}
.ear-left{
    transform-origin: 40pt 30pt;
}
@keyframes earFlip{
    from{
        transform: rotate(10deg);
    }
    to{
        transform: rotate(-35deg);
    }
}

.hand-right, .hand-left{
    animation: handFlip var(--dur) infinite cubic-bezier(0.34, 0.31, 0.4, 0.87) alternate;
}
.hand-right{
    transform-origin: 87pt 80pt;
}
.hand-left{
    transform-origin: 30pt 70pt;
}

@keyframes handFlip{
    from{
        transform: rotate(0deg);
    }
    to{
        transform: rotate(-50deg);
    }
}
.face{
    transform-origin: 30pt 70pt;
    animation: faceMove var(--dur) infinite cubic-bezier(0.34, 0.31, 0.4, 0.87) alternate;
}
@keyframes faceMove{
    from{
        transform: translateY(2%)rotate(-3deg);
    }
    to{
        transform: translateY(-3%);
    }
}

.head{
    transform-origin: 70pt 70pt;
    animation: headMove calc(var(--dur)*2) infinite cubic-bezier(0.34, 0.31, 0.6, 0.67) ;
}
@keyframes headMove{
    0%{
        transform: translate(-2%, 0) ;
    }
    25%{
        transform: translate(0%, -3%);
    }
    50%{
        transform: translate(5%, -3%) ;
    }
    80%{
        transform: translate(5%, 0%);
    }

    100%{
        transform: translate(-2%, 0);
    }

}

.tummy{
    d: path("M 64.172 109.707 C 60.0671 105 40.9931 156.437 60.172 166.394");
    animation: tummyMove calc(var(--dur)*2) infinite cubic-bezier(0.34, 0.31, 0.6, 0.67) ;
}
@keyframes tummyMove{
    0%{
        d: path("M 64.172 109.707 C 50.0671 115 35.9931 156.437 61.172 166.394");
    }
    50%{
        d: path("M 64.172 109.707 C 50.0671 115 35.9931 156.437 61.172 166.394");
    }
    90%{
        d: path('M 64.172 109.707 C 45.0626 115.717 23.0637 154.865 62.7438 166.752');
    }
    100%{
        d: path("M 64.172 109.707 C 50.0671 115 40.9931 156.437 61.172 166.394");
    }
}
.back{
    d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 127.924 160.965 129.6 143.975 107 129");
    animation: backMove calc(var(--dur)*2) infinite cubic-bezier(0.34, 0.31, 0.6, 0.67) ;
}
@keyframes backMove{
    0%{
        d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 127.924 160.965 129.6 143.975 107 129");
    }
    60%{
        d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 127.924 160.965 129.6 143.975 107 129");
    }
    90%{
        d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 117.924 160.965 129.6 143.975 107 129");
    }
    95%{
        d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 127.924 160.965 129.6 143.975 107 129");
    }

    100%{
        d: path("M 82.135 166.943 C 82.451 170.765 85.106 181.176 86.915 186.265 C 87.1 186.785 86.961 187.549 86.605 187.971 C 84.846 190.055 83.139 195.602 83.745 196.472 C 88.286 210.972 119.299 209.305 120.75 192.38 C 121.071 182.208 120.173 176.078 120.75 166.943 C 127.924 160.965 129.6 143.975 107 129");
    }
}
.lace-right, .lace-left, .lace-right-button, .lace-left-button {
    animation: var(--lace-animate) calc(var(--dur)*2) var(--lace-delay) infinite cubic-bezier(0.34, 0.31, 0.6, 0.67);
}
.lace-right{
    --lace-animate: LaceRightMove;
}
.lace-left{
    --lace-animate: LaceLeftMove;
}
.lace-right-button{
    --lace-animate: LaceRightButton;
}
.lace-left-button{
    --lace-animate: LaceLeftButton;
}
@keyframes LaceRightMove{
    0%{
        d:path("M 71.033 120.968 C 69.562 126.572 70.297 140.644 70.625 142.219");
    }
    65%{
        d:path("M 71.033 120.968 C 69.562 126.572 70.297 140.644 70.625 142.219");
    }

    85%{
        d: path("M 71.033 120.968 C 69.562 126.572 60.297 137.644 56.625 139.219")
    }

    100%{
        d:path("M 71.033 120.968 C 69.562 126.572 70.297 140.644 70.625 142.219");
    }

}
@keyframes LaceLeftMove{
    0%{
        d:path("M 64.935 118.52 C 63.354 140.67 63.595 131.044 63.636 140.67");
    }
    65%{
        d:path("M 64.935 118.52 C 63.354 140.67 63.595 131.044 63.636 140.67");
    }

    85%{
        d: path("M 64.935 118.52 C 63.354 122.096 54.595 131.044 50.636 133.67")
    }

    100%{
        d:path("M 64.935 118.52 C 63.354 140.67 63.595 131.044 63.636 140.67");
    }

}

@keyframes LaceRightButton{
    0%{
        transform: translate(11pt, 3pt);
    }
    65%{
        transform: translate(11pt, 3pt);
    }
    85%{
        transform: translate(0pt, 0pt);
    }
    100%{
        transform: translate(11pt, 3pt);
    }
}

@keyframes LaceLeftButton{
    0%{
        transform: translate(11pt, 6pt);
    }
    65%{
        transform: translate(11pt, 6pt);
    }
    85%{
        transform: translate(0pt, 0pt);
    }
    100%{
        transform: translate(11pt, 6pt);
    }
}
.sparkleTR, .sparkleTL, .sparkleBR, .sparkleBL{
    animation: sparkle  infinite cubic-bezier(0.34, 0.31, 0.6, 0.6);
}
.sparkleTR{
    animation-duration: calc(var(--dur) / 1.5);
    animation-delay: var(--sparkle);
    transform-origin: 165px 25px;
}
.sparkleTL{
    animation-duration: calc(var(--dur) / 1.5);
    animation-delay: calc(var(--sparkle) * 1.2);
    animation-direction: reverse;
    transform-origin: 12px 32px;
}
.sparkleBR{
    animation-duration: calc(var(--dur) / 1.5);
    animation-delay:  calc(var(--sparkle) * 1.5);
    transform-origin: 170px 98px;
}
.sparkleBL{
    animation-duration: calc(var(--dur) / 1.5);
    animation-delay: calc(var(--sparkle) * 1.8);
    animation-direction: reverse;
    transform-origin: 12px 135px;
}
@keyframes sparkle {
    0%{
        transform: rotate(0) scale(0);
        opacity: 1;
    }

    50%{
        transform: rotate(0deg) scale(1.5);
        opacity: 1;

    }
    100%{
        transform: rotate(360deg) scale(1.2);
        opacity: 0;
    }
}





.svg-container {
    position: absolute;
    right: 0;
    bottom: 0;
    position: absolute;
    transform: translate(-50%,-50%);
}





h1 {
    text-align: center;

}
a {
    text-decoration: none!important;
}
.center-div {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh; /* 让容器高度自适应视口高度 */
}

 /*可能的其他样式，比如调整左边距*/
.left-adjust {
    left: 30%; /* 调整左边距 */
}

.gradient-border {
    --border-width: 5px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 640px;
    height: 480px;
    font-family: Lato, sans-serif;
    font-size: 2.5rem;
    text-transform: uppercase;
    color: white;
    background: #222;
    border-radius: var(--border-width);

    &::after {
        position: absolute;
        content: "";
        top: calc(-1 * var(--border-width));
        left: calc(-1 * var(--border-width));
        z-index: -1;
        width: calc(100% + var(--border-width) * 2);
        height: calc(100% + var(--border-width) * 2);
        background: linear-gradient(
                60deg,
                hsl(224, 85%, 66%),
                hsl(269, 85%, 66%),
                hsl(314, 85%, 66%),
                hsl(359, 85%, 66%),
                hsl(44, 85%, 66%),
                hsl(89, 85%, 66%),
                hsl(134, 85%, 66%),
                hsl(179, 85%, 66%)
        );
        background-size: 300% 300%;
        background-position: 0 50%;
        border-radius: calc(2 * var(--border-width));
        animation: moveGradient 4s alternate infinite;
    }
}

@keyframes moveGradient {
    50% {
        background-position: 100% 50%;
    }
}

.capture_a {
    font-family: "bw";
    text-decoration: none;
    font-size: 1.5rem; /* 调整按钮字体大小 */
    color: #fff;
    background-color: #acc7ed;
    border-radius: 10rem;
    padding: 1rem 2rem;
    transition: all 0.6s ease;
}

.capture_a:hover {
    transform: scale(1.1);
}

.video-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70vh; /* 或其他你需要的高度 */
}

@font-face {
    font-family: "bw";
    src: url("https://robindelaporte.fr/codepen/play/BwModelicaSS01-ExtraBold.woff") format("woff");
}

html {
    font-size: 62.5%;
}

.home {
    position: relative;
    margin-top: 50px; /* 根据需要调整这个值，以确保按钮在视频下方 */
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto; /* 或其他你需要的高度 */
}

.home a {
    display: inline-block; /* 添加这一行 */
    font-family: "bw";
    text-decoration: none;
}

.home a span {
    position: relative;
    opacity: 1;
    transition: opacity 0.6s ease;
}

.home a:hover {
    transform: scale(1.1);
    cursor: pointer;

    & span {
        opacity: 1;
    }

    &:after {
        content: "";
        background: linear-gradient(56deg, #61dafb 0%, #d6cbf6 46%, #f2056f 100%);
        width: 80%;
        height: 20%;
        position: absolute;
        bottom: -4px;
        left: 10%;
        opacity: 1;
        filter: blur(15px);
        border-radius: 10rem;
        transform: translateZ(-1px);
        transition: opacity 0.6s ease;
    }

    &:before {
        content: "";
        background: linear-gradient(56deg, #61dafb 0%, #d6cbf6 46%, #f2056f 100%);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 1;
        border-radius: 10rem;
        transition: opacity 0.4s ease;
    }
}